#ifndef LOGGER_WRAPPER_H
#define LOGGER_WRAPPER_H

#include "libdaq/utils/wrapper_util.h"
#include <cstdint>

#ifdef __cplusplus
extern "C" {
#endif

// 日志等级控制
// 日志等级枚举值：
// 0 = trace, 1 = debug, 2 = info, 3 = warn, 4 = error, 5 = critical, 6 = off
DLL_EXPORT void CALL_FUNCTION DAQLibrary_SetLogLevel(int level);
DLL_EXPORT int CALL_FUNCTION DAQLibrary_GetLogLevel();

// 日志等级常量定义
#define DAQ_LOG_LEVEL_TRACE    0
#define DAQ_LOG_LEVEL_DEBUG    1
#define DAQ_LOG_LEVEL_INFO     2
#define DAQ_LOG_LEVEL_WARN     3
#define DAQ_LOG_LEVEL_ERROR    4
#define DAQ_LOG_LEVEL_CRITICAL 5
#define DAQ_LOG_LEVEL_OFF      6

#ifdef __cplusplus
}
#endif

#endif // LOGGER_WRAPPER_H